The access, transfer and storage of electronic data is one of the most important aspects of modem life. From business to personal use, electronic data is utilized to make lives easier, as information representing transactions, personal data, business, and the like, is stored and transferred quickly and accurately. By communicatively linking systems, data may be transferred to provide this functionality.
In a Fibre Channel Storage Array Network (FC SAN) environment, multiple FCP (Fibre Channel Protocol) targets may be visible to multiple FCP initiators (an initiator is a device that requests an operation to be performed by another device known as a target such as a peripheral). It is sometimes valuable to limit the scope of this visibility so as to make only certain targets visible to selected initiators. This ability may be desirable in host systems which can only control a finite number of targets. By limiting the visibility, or filtering out unwanted targets, resources are more easily guaranteed for the selected targets. In other SANs, multiple initiators may have visibility and access to an individual target. Again, by limiting the visibility, or filtering out targets not under the control of this initiator, conflicts may be avoided.
FIGS. 35 and 36 illustrate a simple single channel HBA (host bus adapter) attached to three targets. The three targets are presented to the host via the LID (logical identifier) table. FIG. 36 is a simplified version of FIG. 35.
FIGS. 37–39 illustrate a multiple host environment. In FIG. 37, all the targets are visible to each host.
Fabric zoning and LUN (logical unit number) masking are two practices which address these problems. Zoning is implemented in many FC (Fibre Channel) fabrics and targets from initiators usually by limiting their discovery. LUN masking is also similar to target masking, but operates at the LUN level. LUN masking has been implemented at both the driver level and the level of one of several RAID (redundant array of independent disks) controllers.
As shown in FIG. 38, it is sometimes valuable to limit the visibility of individual hosts to avoid conflicts in allocating resources. This is often accomplished by zoning a fabric. Fabric zoning requires the presence of a fabric. As shown in FIG. 39, zoning cannot be utilized to mask targets on a private FC loop or targets residing on the local side of a public FC loop. Many fabric vendors license their zoning feature. Even within the presence of a fabric environment, this could be used as an alternative to using their license. Target masking is similar to LUN masking on single LUN targets. Although target masking is not as flexible as LUN masking, it is easier to implement and can be pushed down HBA. Presently, LUN masking is usually addressed in either the driver stack or a RAID controller. It is implemented within the driver stack variations and must be worked out for every operating system with which it is used. Implementations within a RAID controller limit masking to LUNs controlled by that controller.
LUN masking implementations require relatively high development costs. LUN masking also does not permit masking targets throughout the SAN, but is limited to targets behind the RAID controller. Fabric zoning requires the presence of a fabric and cannot be utilized to mask targets on a private FC loop or targets residing on the local side of a public FC loop. In multivendor fabrics, FC fabric vendors often must resolve zoning problems which arise through meshing the functionality of two or more vendor fabrics.
Therefore, it would be desirable to provide target masking which has relatively low development costs, is useable throughout a SAN, is useable with a private FC loop or the local side of a public FC loop, and allows scalability.